Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Bump libllvm and flang from 18.1.8 to 19.1.0 #21452

Draft
wants to merge 3 commits into
base: master
Choose a base branch
from

Conversation

finagolfin
Copy link
Member

Let's see if it builds for AArch64 still, haven't tried this at all locally.

@finagolfin finagolfin marked this pull request as draft September 12, 2024 11:29
@finagolfin
Copy link
Member Author

AArch64 built and runs fine, so building the rest now.

@finagolfin
Copy link
Member Author

Alright, the upcoming LLVM 19 release builds and works fine. @truboxl, @licy183 and @TomJo2000, you may want to start trying to build the rust, zig, and flang compilers with these new packages: simply download the zip file from the CI and unpack the .deb packages to ~/.termux-build/_cache-aarch64/ or whichever arch you need, so you don't have to waste time rebuilding LLVM.

@finagolfin
Copy link
Member Author

I just need to update the llvm-config script for the CI and this should be ready to go for the initial patch release, but I won't merge till the compilers that dynamically link against it are ready. Swift statically links its own forked LLVM, so there's no need to bump that package and a couple others that do the same.

@finagolfin
Copy link
Member Author

LLVM 19.1.0 will be released in the next couple days. I see only two compilers that dynamically link against it and which would break on the update: crystal and rust.

@HertzDevil, do you know if crystal will rebuild fine against the next LLVM release? @truboxl, get a chance to try rebuilding rust yet with this update?

@HertzDevil
Copy link
Contributor

We have a pending PR for Crystal that was last known to work with some x86-64 Debian release after 19.1.0-rc1. Our next minor release is scheduled for Oct 9th, although that PR needs to land before 25th this month. I do not believe there are any AArch64-specific blockers.

@truboxl
Copy link
Contributor

truboxl commented Sep 17, 2024

I do not understand what makes this branch so special that ./scripts/buildorder.py really unhappy.
Keeps spawning undeterministic errors below, preventing me to build other packages:

ERROR: Package binutils-is-llvm depends on non-existing package "llvm"
ERROR: Package binutils-is-llvm depends on non-existing package "lld"

EDIT: ah might be the blacklist arch

@finagolfin
Copy link
Member Author

ah might be the blacklist arch

Yeah, just remove that line. I didn't want to rebuild AArch64 unnecessarily, as I had already built it first.

@landfillbaby landfillbaby changed the title bump(libllvm): 18.1.8 to 19.1.0 RC4 for testing bump(libllvm): 18.1.8 to 19.1.0 for testing Sep 17, 2024
@fornwall
Copy link
Member

Rust should be ready for LLVM 19 with next version 1.82, scheduled for October 17: https://releases.rs/docs/1.82.0/

@finagolfin
Copy link
Member Author

That's way too long, is there a LLVM 19 pull we can backport instead?

@finagolfin finagolfin changed the title bump(libllvm): 18.1.8 to 19.1.0 for testing bump(libllvm): 18.1.8 to 19.1.0 Sep 18, 2024
@finagolfin
Copy link
Member Author

Rebased to fix CI issues

@finagolfin finagolfin changed the title bump(libllvm): 18.1.8 to 19.1.0 Bump libllvm and flang from 18.1.8 to 19.1.0 Sep 18, 2024
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

... actually it might be an issue with include path priorities? we'll see if anything else is missing idioms.h stuff

Copy link
Member Author

@finagolfin finagolfin Sep 19, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If this patch doesn't work, no need to keep trying on this pull, as the CI has to keep building LLVM first. We can just open a separate flang pull later, once this is in.

@truboxl
Copy link
Contributor

truboxl commented Sep 20, 2024

That's way too long, is there a LLVM 19 pull we can backport instead?

We can try build rust 1.82.0 beta but I have no idea why the build broke.

error: manifest path `mdbook-spec/Cargo.toml` does not exist
error: failed to extract std links (ExitStatus(unix_wait_status(32512)))

@finagolfin
Copy link
Member Author

I am surprised the Rust team is waiting so long after the initial LLVM 19 patch release to support it. It would be better if there's an upstream pull you could backport to 1.81. I think somebody did that before for us and it wasn't a massive patch or anything, but I didn't look closely.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants